課程名稱 |
資料結構 Data Structures |
開課學期 |
101-1 |
授課對象 |
管理學院 資訊管理學系 |
授課教師 |
陳郁方 |
課號 |
IM2007 |
課程識別碼 |
705 21200 |
班次 |
|
學分 |
3 |
全/半年 |
半年 |
必/選修 |
必帶 |
上課時間 |
星期一7,8,9(14:20~17:20) |
上課地點 |
管一103 |
備註 |
本課程中文授課,使用英文教科書。 總人數上限:70人 |
Ceiba 課程網頁 |
http://ceiba.ntu.edu.tw/1011ds |
課程簡介影片 |
|
核心能力關聯 |
本課程尚未建立核心能力關連 |
課程大綱
|
為確保您我的權利,請尊重智慧財產權及不得非法影印
|
課程概述 |
本課程將以C++程式語言為主來介紹資料結構的設計與應用,課程將培養學生以物件導向的觀念來思考問題,並運用基本資料結構的性質來尋找解決問題的方法。修習本課程的學生需具備撰寫程式的能力以及物件導向的概念。 |
課程目標 |
本課程將介紹資料結構的設計與應用,我們將介紹串列、堆疊、佇列、樹、排序法,heap及hash表格,表格、圖等重要資料結構,此外,學生將透過許多的程式練習與作業來了解各種資料結構的特性與使用方法,並藉此精進撰寫程式的能力。 |
課程要求 |
程式語言 |
預期每週課後學習時數 |
|
Office Hours |
|
指定閱讀 |
|
參考書目 |
F. M. Carrano, "Data Abstraction and Problem Solving with C++: Walls and
Mirrors," Addison Wesley Longman, 5th edition, 2006 |
評量方式 (僅供參考) |
|
週次 |
日期 |
單元主題 |
第1週 |
9/17 |
Introduction to the Course/Recursive Programming |
第2週 |
9/24 |
Abstract Data Type (ADT), ADT List and its Implementation |
第3週 |
10/1 |
Stack, C++ Exception |
第4週 |
10/8 |
Programming Practice: ADT Polynomial |
第5週 |
10/15 |
Queue |
第6週 |
10/22 |
Tree |
第7週 |
10/29 |
Table and Priority Queue |
第8週 |
11/5 |
課程復習 |
第9週 |
11/12 |
Mid-term exam |
第10週 |
11/19 |
Final project proposal presentation |
第11週 |
11/26 |
Performance analysis and measurement / Hash Table |
第12週 |
12/3 |
Principles of Programming and Software Engineering/ Programming Practice 2: 2-3 Tree |
第13週 |
12/10 |
Programming Practice 2: 2-3 Tree |
第14週 |
12/17 |
Graph/ 2-3 Tree Deletion |
第15週 |
12/24 |
Project Demo (1pm-7pm) |
第16週 |
1/7 |
Final Exam |
|